package com.earthchen.core.support.quartz.service;

import com.earthchen.core.support.quartz.domain.TaskScheduled;

import java.util.List;

/**
 * 定时任务管理
 *
 * @author earthchen
 * @date 2018/9/2
 **/
public interface SchedulerService {

    /**
     * 获取所有任务
     */
    List<TaskScheduled> getAllTaskDetail();

    /**
     * 执行任务
     *
     * @param taskScheduler
     */
    void execTask(TaskScheduled taskScheduler);

    /**
     * 启停
     *
     * @param taskScheduler
     */
    void openTask(TaskScheduled taskScheduler);

    /**
     * 启停
     *
     * @param taskScheduler
     */
    void closeTask(TaskScheduled taskScheduler);

    /**
     * 删除作业
     *
     * @param taskScheduler
     */
    void delTask(TaskScheduled taskScheduler);


    /**
     * 修改执行计划
     *
     * @param taskScheduled
     */
    void updateTask(TaskScheduled taskScheduled);
}